In conventional computer networks such as the Internet, a suite of software applications and protocols collectively referred to as the “World Wide Web” interoperate to allow web browser software, which typically performs (e.g., executes) on behalf of a user on a client computer system coupled to the network, to obtain information from various web server computer systems distributed throughout the network. Generally, the web browser software requests and obtains the information from the servers using a standardized protocol such as the hypertext transfer protocol (HTTP). The information (i.e., data) is often encoded as a web page.
Web pages are essentially comprised of instructions, data or content, and references to data or content that are collectively encoded or written in a scripting language, such as the hypertext markup language (HTML), the extensible markup language (XML) or an applet language such as Java. Such languages allow web page developers (either people or automated software programs) to create or generate web pages that contain or reference many types of multimedia data such as audio data, graphics data, text data, video data and so forth within the web page. If a web page references data or content, as opposed to literally containing the data or content, such references to data are referred to as uniform resource locators or URLs.
According to a typical operation of the World Wide Web, a user on the client computer system coupled to a network executes a web browser and provides a URL for a web page to the browser. The browser receives the URL and uses a protocol such as HTTP to contact a specific server on the network to obtain the web page referenced by the URL. As the browser receives the web page over the network, the browser is able to interpret the web page (i.e., the HTML and associated data and references to data) and present the web page contents to the user of the browser in a format dictated by the web page.
During the process of interpreting and displaying a web page to a user, a typical browser is configured to recognize certain types of data referenced within the web page via embedded URLs. For example, the web page may reference an audio file (e.g., a WAV file) via an embedded URL. A conventional embedded URL of this sort usually specifies a location of a server on the network (via an address, hostname and/or domain name of that server) where the audio file is stored, as well as a filename and/or a filesystem location (e.g., a directory) that indicates a location of the audio file on that server.
When the browser recognizes an embedded URL that identifies an audio file, the browser automatically references that URL to obtain a copy of that audio file. During this process, the browser invokes a reference to the embedded URL within the web page in order to contact the server that stores the audio file, and then requires the server that stores the audio file to transfer the audio file back to the requesting browser. Once the browser receives the audio file in this manner, the browser causes the client computer system to produce (e.g., play) audio output based on data encoded within the audio file using a plug-in software application.
Generally, an “audio plug-in” or “plug-in” as it is called, operates in conjunction with the browser on the client computer system to audibly reproduce audio data encoded with an audio file to the user of the browser by decoding the audio data. In this manner, a web page can incorporate sound effects such as music, speech or other audible information, which the browser can present to the user once the browser obtains the audio file data referenced within the web page via the embedded URL.
In the case of audio files referenced via URLs as explained above, the browser software may or may not require the use of a plug-in. A plug-in typically incorporates processing logic and decoding algorithms that can read audio file data and reproduce the sound represented by that data. In other words, the plug-in software application understands how to play the audio file data on the client computer system according to the format in which the audio file data is encoded. Since audio decoding processing is often a processor intensive task, audio plug-ins allow the browser software to offload audio file processing to another task (i.e., the plug-in). Audio plug-ins are also helpful since many different audio encoding formats exist and such formats are constantly being updated with newer standards. As such, when a new audio including format becomes popular, the user of a browser can obtain (e.g., via downloading) a plug-in capable of decoding the new format without having to obtain a new version of the browser.
As an example, during development of a web page, a web page designer may create an audio file using a standardized audio encoding format such as MPEG 3 or MP3. The web page designer can incorporate an embedded URL reference to this audio file within the web page. When a user's browser software loads the web page, the browser invokes a reference to the embedded URL for the MP3 audio file in order to begin retrieving the audio file and concurrently attempts to launch (e.g., execute) an MP3 plug-in capable of audibly reproducing the MP3 data from the audio file. If the browser cannot find an MP3-capable plug-in on the client computer system, the browser can prompt the user to download an acceptable MP3-capable plug-in from a server on the Internet. Typically, such plug-ins are free for users to download. Once the user obtains the required MP3 plug-in, the browser can launch the MP3 plug-in which then executes to receive the incoming MP3 audio file data and proceeds to audibly reproduce the audio data encoded in MP3 format in the audio file.
Typically, audio file data is not expressly or literally embedded within a web page due to the amount of space that would be required to store such data in the web page file. Rather, by referencing the audio file within the web page as an embedded URL, the web page file can remain relatively small in size and the audio file can be incorporated, via other embedded URL references, into other web pages as well.
Conventional URLs thus provide a convenient and standardized way to reference multimedia content such as sound, graphics or other types of content within a web page without specifically requiring the actual data (e.g., audio data) to be contained within a web page. As another example, if a web page designer wants to include a graphical image within a web page, the web page designer can embed a URL that references an image file containing the graphical image data. When the browser software loads such a web page and detects the embedded URL, the browser software proceeds to invoke a reference to the URL in order to load the graphical image file and display the image to the user of the browser.